﻿<UserControl x:Class="GraphDrawer.SetupSimulation"
	xmlns:controls="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Toolkit"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:m="clr-namespace:Microsoft.Windows.Controls;assembly=Microsoft.Windows.Controls.WatermarkedTextBox"
	Width="780" Height="600" Background="White">
	<Grid x:Name="LayoutRoot">
		<Grid.RowDefinitions>
			<RowDefinition Height="100"/>
			<RowDefinition Height="*" />
		</Grid.RowDefinitions>

		<Grid.ColumnDefinitions>
			<ColumnDefinition Width="200"></ColumnDefinition>
			<ColumnDefinition Width="*"></ColumnDefinition>
		</Grid.ColumnDefinitions>

		<Border BorderThickness="1" BorderBrush="Black" Grid.Row="0" Grid.Column="0">
			<TextBlock TextAlignment="Center" VerticalAlignment="Center" FontSize="20">
				Simulation setup
			</TextBlock>
		</Border>
		<Border BorderThickness="1" BorderBrush="Black" Grid.Row="0" Grid.Column="1">
			<StackPanel VerticalAlignment="Center" Margin="5,5,5,5">
				<TextBlock TextWrapping="Wrap">
					In this page you can either do nothing and click the next button to go to the
					simulation page or setup the following parameters:
				</TextBlock>
				<TextBlock TextWrapping="Wrap">
					1. Simulation steps - steps count of simulation.<LineBreak />
                    2. Max./Min. contacts per step - max./min. possible infectionts per step<LineBreak />
					3. State change strategies - you can add so many strategies as you want. They will
					be fired in the same order you typed them.
				</TextBlock>
			</StackPanel>
		</Border>

		<Border BorderThickness="1" BorderBrush="Black" Grid.Row="1" Grid.ColumnSpan="2">
			<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
				<StackPanel Name="SimulationsCountPanel" Orientation="Horizontal" Visibility="Collapsed">
					<TextBlock Margin="0, 3, 34, 0">
						Simulations count:
					</TextBlock>
					<m:WatermarkedTextBox  x:Name="SimulationsCount" Height="20" Width="90" Margin="10,0,0,0" Watermark="Number of simulations" Text="10"></m:WatermarkedTextBox>
				</StackPanel>
				<StackPanel Orientation="Horizontal">
					<TextBlock Text="Simulation steps:" Margin="0,3,41,0" ></TextBlock>
					<m:WatermarkedTextBox  x:Name="Steps" Height="20" Width="90" Margin="44,0,0,0" Watermark="Number of max steps" Text="500" TextChanged="Steps_TextChanged"></m:WatermarkedTextBox>
				</StackPanel>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="Min. contacts per step:" Margin="0,10,41,0" ></TextBlock>
                    <m:WatermarkedTextBox  x:Name="MinContacts" Height="20" Width="90" Margin="13,0,0,0" Watermark="Number MinContacts" Text="1" TextChanged="MinContacts_TextChanged"></m:WatermarkedTextBox>
                </StackPanel>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="Max. contacts per step:" Margin="0,10,41,0" ></TextBlock>
                    <m:WatermarkedTextBox  x:Name="MaxContacts" Height="20" Width="90" Margin="10,0,0,0" Watermark="Number MaxContacts" Text="1" TextChanged="MaxContacts_TextChanged"></m:WatermarkedTextBox>
                </StackPanel>
                <StackPanel Orientation="Horizontal" Margin="0,3,0,0" Visibility="Collapsed">
					<TextBlock Text="Available vaccines count:" Margin="0,3,0,0" ></TextBlock>
					<TextBox x:Name="vaccines" Height="20" Width="90" Margin="10,0,0,0" TextChanged="vaccines_TextChanged"></TextBox>
				</StackPanel>
				<TextBlock Margin="0,20,0,0">
					Choose state change strategy:
				</TextBlock>
				<ComboBox x:Name="inculationChooser" SelectionChanged="inculationChooser_SelectionChanged"></ComboBox>
				<Button x:Name="btnChangePlan" Height="20" Width="50" Margin="0,10,0,0" Content="Add" IsEnabled="False" Click="btnChangePlan_Click" />
				<StackPanel Name="strategies" Margin="0,20,0,0">
				</StackPanel>
				<TextBlock Name="statesLabel" Margin="0,20,0,0" Visibility="Collapsed">
					Type numbers of nodes of each state:
				</TextBlock>
				<StackPanel Orientation="Horizontal" Margin="0,3,0,0">
					<StackPanel Name="statesNamesPanel"></StackPanel>
					<StackPanel Name="statesCountPanel" Margin="5,0,0,0"></StackPanel>
				</StackPanel>
			</StackPanel>
		</Border>
	</Grid>
</UserControl>
